<?php
/*
 * Copyright (c) 2017-2025 Tencent. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *    http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
namespace TencentCloud\Ocr\V20181119\Models;
use TencentCloud\Common\AbstractModel;

/**
 * RecognizeBrazilIDCardOCR response structure.
 *
 * @method string getNome() Obtain Name
 * @method void setNome(string $Nome) Set Name
 * @method string getMemberShip() Obtain Family information
 * @method void setMemberShip(string $MemberShip) Set Family information
 * @method string getDataNascimento() Obtain Birthday
 * @method void setDataNascimento(string $DataNascimento) Set Birthday
 * @method string getIssuingAgency() Obtain Issuing agency
 * @method void setIssuingAgency(string $IssuingAgency) Set Issuing agency
 * @method string getFatorrh() Obtain blood type
 * @method void setFatorrh(string $Fatorrh) Set blood type
 * @method string getNaturalIDade() Obtain Birth place
 * @method void setNaturalIDade(string $NaturalIDade) Set Birth place
 * @method string getObservations() Obtain Additional information 
 * @method void setObservations(string $Observations) Set Additional information 
 * @method string getCPF() Obtain CPF
 * @method void setCPF(string $CPF) Set CPF
 * @method string getDNI() Obtain DNI
 * @method void setDNI(string $DNI) Set DNI
 * @method string getRegistroGeral() Obtain universal registration
 * @method void setRegistroGeral(string $RegistroGeral) Set universal registration
 * @method string getDispatchDate() Obtain Issue date
 * @method void setDispatchDate(string $DispatchDate) Set Issue date
 * @method string getRegistro() Obtain address
 * @method void setRegistro(string $Registro) Set address
 * @method string getPortraitImage() Obtain Portrait image
 * @method void setPortraitImage(string $PortraitImage) Set Portrait image
 * @method string getDocOrigem() Obtain Original identity information
 * @method void setDocOrigem(string $DocOrigem) Set Original identity information
 * @method string getRequestId() Obtain The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
 * @method void setRequestId(string $RequestId) Set The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
 */
class RecognizeBrazilIDCardOCRResponse extends AbstractModel
{
    /**
     * @var string Name
     */
    public $Nome;

    /**
     * @var string Family information
     */
    public $MemberShip;

    /**
     * @var string Birthday
     */
    public $DataNascimento;

    /**
     * @var string Issuing agency
     */
    public $IssuingAgency;

    /**
     * @var string blood type
     */
    public $Fatorrh;

    /**
     * @var string Birth place
     */
    public $NaturalIDade;

    /**
     * @var string Additional information 
     */
    public $Observations;

    /**
     * @var string CPF
     */
    public $CPF;

    /**
     * @var string DNI
     */
    public $DNI;

    /**
     * @var string universal registration
     */
    public $RegistroGeral;

    /**
     * @var string Issue date
     */
    public $DispatchDate;

    /**
     * @var string address
     */
    public $Registro;

    /**
     * @var string Portrait image
     */
    public $PortraitImage;

    /**
     * @var string Original identity information
     */
    public $DocOrigem;

    /**
     * @var string The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
     */
    public $RequestId;

    /**
     * @param string $Nome Name
     * @param string $MemberShip Family information
     * @param string $DataNascimento Birthday
     * @param string $IssuingAgency Issuing agency
     * @param string $Fatorrh blood type
     * @param string $NaturalIDade Birth place
     * @param string $Observations Additional information 
     * @param string $CPF CPF
     * @param string $DNI DNI
     * @param string $RegistroGeral universal registration
     * @param string $DispatchDate Issue date
     * @param string $Registro address
     * @param string $PortraitImage Portrait image
     * @param string $DocOrigem Original identity information
     * @param string $RequestId The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
     */
    function __construct()
    {

    }

    /**
     * For internal only. DO NOT USE IT.
     */
    public function deserialize($param)
    {
        if ($param === null) {
            return;
        }
        if (array_key_exists("Nome",$param) and $param["Nome"] !== null) {
            $this->Nome = $param["Nome"];
        }

        if (array_key_exists("MemberShip",$param) and $param["MemberShip"] !== null) {
            $this->MemberShip = $param["MemberShip"];
        }

        if (array_key_exists("DataNascimento",$param) and $param["DataNascimento"] !== null) {
            $this->DataNascimento = $param["DataNascimento"];
        }

        if (array_key_exists("IssuingAgency",$param) and $param["IssuingAgency"] !== null) {
            $this->IssuingAgency = $param["IssuingAgency"];
        }

        if (array_key_exists("Fatorrh",$param) and $param["Fatorrh"] !== null) {
            $this->Fatorrh = $param["Fatorrh"];
        }

        if (array_key_exists("NaturalIDade",$param) and $param["NaturalIDade"] !== null) {
            $this->NaturalIDade = $param["NaturalIDade"];
        }

        if (array_key_exists("Observations",$param) and $param["Observations"] !== null) {
            $this->Observations = $param["Observations"];
        }

        if (array_key_exists("CPF",$param) and $param["CPF"] !== null) {
            $this->CPF = $param["CPF"];
        }

        if (array_key_exists("DNI",$param) and $param["DNI"] !== null) {
            $this->DNI = $param["DNI"];
        }

        if (array_key_exists("RegistroGeral",$param) and $param["RegistroGeral"] !== null) {
            $this->RegistroGeral = $param["RegistroGeral"];
        }

        if (array_key_exists("DispatchDate",$param) and $param["DispatchDate"] !== null) {
            $this->DispatchDate = $param["DispatchDate"];
        }

        if (array_key_exists("Registro",$param) and $param["Registro"] !== null) {
            $this->Registro = $param["Registro"];
        }

        if (array_key_exists("PortraitImage",$param) and $param["PortraitImage"] !== null) {
            $this->PortraitImage = $param["PortraitImage"];
        }

        if (array_key_exists("DocOrigem",$param) and $param["DocOrigem"] !== null) {
            $this->DocOrigem = $param["DocOrigem"];
        }

        if (array_key_exists("RequestId",$param) and $param["RequestId"] !== null) {
            $this->RequestId = $param["RequestId"];
        }
    }
}
